package priv.conceit.study.book.lambda.chapter2;

import java.util.EventListener;

/**
 * FunctionInterface
 * 2.4函数接口
 * 只用一个方法的接口来表示特定方法并重复使用
 * FunctionInterface只有一个抽象方法 println 因为println方法定义在接口中，因此abstract关键字不是必需
 * println方法只接受一个参数并返回空
 * 函数接口可以接受多个参数或者泛型
 *
 * @FunctionInterface 注释的约束
 * 接口有且只能有一个抽象方法，只有方法定义，没有方法体
 * 在接口中覆写Object类中的public方法，不算是函数式接口的方法
 *
 * 该注解只是提醒编译器去检查该接口是否仅包含一个抽象方法
 *
 * @author conceit
 * @date 2021/9/2 11:10
 */
@FunctionalInterface
public interface FunctionInterface  {
    abstract void println(String str);
}
